#pragma once 

#include "helper/transaction/Transaction.h"

namespace helper {
namespace sqlite {

class IDB ;

class Transaction : public helper::transaction::Transaction {
public:
  Transaction(helper::sqlite::IDB & db);
  ~Transaction();

protected:
  std::error_code _begin() override;
  std::error_code _commit()  override;
  std::error_code _rollback() override;

private:
  std::error_code action(const char * sql) ;

private:
  IDB & _db;
};

}//namespace sqlite
}//namespace helper:

